草庐IT

Web 测试

全部标签

javascript - 测试一个对象是否是 DOM 事件

从像这样的函数中functioneventHandler(e){//...}是否有一种可靠且有效的方法来确定e是否为DOM事件? 最佳答案 我认为没有可靠的方法可以确定给定对象是否不是DOM事件。typeofe将始终为真正的Event对象返回'object',这没有帮助。您可能检查对象的任何属性都可以存在于真正的事件对象或任何非事件对象中。您可能认为原型(prototype)链可用于确定这一点,但它与#2存在相同的问题(可以轻松复制)。contructor属性看起来很有前途,但可以这样做:functionDummyEvent(){t

javascript - 如何将 Backbone.js 用于多页 Web 应用程序?

我一直使用Backbone的路由(#!/blah)但我意识到,为了被Google编入索引,您需要提供网站的非JavaScript版本。我不喜欢写两次代码。因此,我宁愿构建多页面应用程序,也不愿构建单页面网络应用程序。Backbone.js为我提供了“结构”,因此我的javascript不会变成一团糟。但是,我对如何使用Backbone构建多页面应用一无所知。您是否在每个页面渲染中包含main.js文件?路线呢?你怎么处理那件事呢?您如何处理模块化等问题?我希望有关于如何使用Backbone构建多页javascript应用程序的教程。 最佳答案

javascript - 如何在 Capybara 验收测试中 stub JavaScript 延迟?

MyRails应用程序包含一个JavaScript模式,它会在用户单击链接后45秒弹出。结果,我的验收测试失败了。我最初尝试在我的Capybara验收测试中使用Timecopgem来快进时间,但那没有用。然而,当我添加一个sleep(45)时,它确实起作用了。显然,我不能在我的规范中使用sleep(45)3次,但知道什么有效是很好的,这样我可以用更快的方法更接近它。我从实验中得出的结论是,Ruby跟踪时间,Javascript跟踪时间,而Timecop是快进Ruby时间而不是Javascript时间。有没有办法在我的Capybara测试中快进45秒,以便触发我的Javascript事件

javascript - 如何使用 Web Audio API 降低麦克风输入的噪音?

我一直在尝试使用WebAudioAPI并将笔记本电脑的麦克风用作输入源。不过,当我听输入时,我能听到很多白噪音;我怎样才能创建一个过滤器来降低噪音,使声音更清晰?有没有针对这种情况提供预写噪声过滤器的库? 最佳答案 '`我正在研究一些POC并使用BiquadFilter减少笔记本电脑的“生命周期Nose”。我也用过压缩器,但你不必))(function(){varfilter,compressor,mediaStreamSource;//Startoffbyinitializinganewcontext.varcontext=new

javascript - 为什么ExtJS要测试浏览器是否支持排序?

我是一个javascript新手,这是来自ExtJS的代码,这让我很困惑:supportsSort=(function(){vara=[1,2,3,4,5].sort(function(){return0;});returna[0]===1&&a[1]===2&&a[2]===3&&a[3]===4&&a[4]===5;}()),有人能告诉我为什么ExtJS要做这个测试吗?最好附上一些示例代码。 最佳答案 犹豫是否将此作为答案发布,因为我承认只是在进行有根据的猜测,但根据MDN,Array.sort的浏览器兼容性对于所有内容都列为E

javascript - Chrome 扩展 : identify web requests of background-page iframe?

我正在编写一个Chrome扩展程序,它会代表用户定期检查网页。为了不引人注目,该页面被加载到扩展程序隐藏背景页面上的iframe中。是否可以仅识别此iframe发出的网络请求?我最初的实验(见下文)似乎表明这很棘手。获取特定选项卡的所有Web请求很容易:您拥有tabId,并且可以使用该tabId过滤Web请求(通过WebRequestAPI)。但是对于后台页面iframe,不清楚“tabId等效”标识符是什么,或者如何使用它来过滤Web请求。有什么想法吗?我最初的实验细节如下。frameId值看起来很有希望,但我不认为它在扩展程序中是唯一的。此问题已针对Firefox提出:Identi

javascript - 测试对象是否具有多个属性

我在检查这个对象时遇到问题,我需要做些什么来链接多个.to.have.property语句吗?我相信我只是将上一个.to.have.property的结果返回到下一个。expect(shopify.formatRequestOptions("shop")).to.have.property('url',"https://"+settings.shop+"/admin/shop.json").to.have.property('method',"GET").to.have.deep.property('headers.X-Shopify-Access-Token',settings.ac

javascript - 测试未导出的 TypeScript 函数

我使用Mocha/Chai测试JavaScript前端代码,现在我们切换到TypeScript。我有几个要测试的功能。但它们不应该是可导出的。我可以在不向它们添加export的情况下访问此函数并对其进行测试吗? 最佳答案 无法访问未导出的模块函数。moduleMyModule{functionprivateFunction(){alert("privateFunction");}}MyModule.privateFunction();//Generatesacompilererror但是,撇开私有(private)​​方法测试的有效

javascript - 如何测试 Node 数据分块功能

我正在开发一个使用Node的项目,我们正在努力实现100%的功能覆盖。这是我们唯一没有测试过的函数,它在另一个函数中。varuserInput="";req.on("data",function(data){userInput+=data;});你如何着手测试这个功能?我们尝试从另一个文件导出函数,但没有成功。我应该提一下,我们正在使用磁带作为测试模块。 最佳答案 您需要根据请求触发此“数据”事件。这样这个回调就会被调用。例如,假设您的测试中有req,您可以做类似的事情(这是Mocha):req.trigger('data','sa

javascript - 如何使用 web api2 Controller 使用 firebase token 身份验证

我有一个firebase身份验证token,我正试图将其传递给WebAPIController。我在这里关注这篇文章。stackoverflowpost我在$http请求header中有不记名token。我处理了cors(除非我遗漏了什么)。我的api项目的终点是接收带有空header的请求。所以我正在尝试调试错误但没有任何特定错误我不确定在哪里看 最佳答案 您可以使用以下代码获取header中“Authorization”元素的值:stringfirebaseAuthToken=string.Empty;firebaseAuthT